package org.hilo.boot.app.tool;

/**
 * 封装基本的获取用户ID的方法
 * @author zollty
 * @since 2022年10月26日
 */
public interface RequestUserService {
    
    /** 
     * 获取当前会话账号id 
     * @param <T> 返回类型 
     * @return 登录id 
     */
    <T> T getLoginId();
    
    /** 
     * 获取当前会话账号id 
     * @param <T> 返回类型 
     * @param context 上下文
     * @return 登录id 
     */
    <T> T getLoginId(Object context);
    
    /** 
     * 获取当前会话账号 
     * @param <T> 返回类型 
     * @return 登录用户 
     */
    <T> T getLoginUser();
    
    /** 
     * 获取当前会话账号
     * @param <T> 返回类型 
     * @param context 上下文
     * @return 登录用户 
     */
    <T> T getLoginUser(Object context);

}
